package com.kh.samr.entity.plan_project;

import com.kh.samr.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

/**
 * 所属企业信息
 *
 * @author Harry
 * @date 2020/12/29
 */
@ApiModel(description = "所属企业信息")
@Table(name = "pp_organized_by")
@EqualsAndHashCode(callSuper = true)
@Entity(name = "pp_organized_by")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class OrganizedBy extends BaseEntity {
	
	private static final long serialVersionUID = -1086966792327114735L;
	
	/**
	 * 企业信息标准唯一标识
	 */
	@ApiModelProperty(value = "企业信息标准唯一标识", readOnly = true)
	@Column(length = 36)
	private String organizedStandardId;
	
	/**
	 * 统一社会信用代码
	 */
	@ApiModelProperty(value = "统一社会信用代码", readOnly = true)
	@Column(length = 20)
	private String uniformSocialCreditCode;

	/**
	 * 单位全名
	 */
	@ApiModelProperty(value = "单位全名", readOnly = true)
	@Column(length = 100, nullable = false)
	private String companyFullName;
	
	/**
	 * 企业类型
	 */
	@ApiModelProperty(value = "企业类型", readOnly = true)
	@Column(length = 16, nullable = false)
	private String enterpriseType;

	/**
	 * 注册地址
	 */
	@ApiModelProperty(value = "注册地址", readOnly = true)
	@Column(length = 150, nullable = false)
	private String registeredAddress;

	/**
	 * 坐落地址
	 */
	@ApiModelProperty(value = "坐落地址", readOnly = true)
	@Column(length = 150, nullable = false)
	private String locationAddress;

	/**
	 * 法定代表人
	 */
	@ApiModelProperty(value = "法定代表人", readOnly = true)
	@Column(length = 100, nullable = false)
	private String legalPerson;
	
	/**
	 * 法人性质
	 */
	@ApiModelProperty(value = "法人性质", readOnly = true)
	@Column(length = 30, nullable = false)
	private String legalPersonNature;

	/**
	 * 法人类型
	 */
	@ApiModelProperty(value = "法人类型", readOnly = true)
	@Column(length = 30, nullable = false)
	private String legalPersonType;

	/**
	 * 局级（区县）主管部门
	 */
	@ApiModelProperty(value = "局级（区县）主管部门", readOnly = true)
	@Column(length = 150, nullable = false)
	private String bureauCompetentDepartment;

	/**
	 * 是否主承担单位
	 */
	@ApiModelProperty(value = "是否主承担单位", readOnly = true)
	private boolean isMainUndertaking;

	/**
	 * 承担任务
	 */
	@ApiModelProperty(value = "承担任务", readOnly = true)
	@Column(length = 1000, nullable = false)
	private String takeTask;

	/**
	 * 位次
	 */
	@ApiModelProperty(value = "位次", readOnly = true)
	private int rank;
}
